[XEN][POWERPC] DomU real time clock based off of the real one in Dom0
authorJimi Xenidis <jimix@watson.ibm.com>
Tue, 19 Dec 2006 14:20:58 +0000 (09:20 -0500)
committerJimi Xenidis <jimix@watson.ibm.com>
Tue, 19 Dec 2006 14:20:58 +0000 (09:20 -0500)
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %DBR%C7%D0C%BB%2A%7F%3D%C6%7FO/%B4%F6I%8B%92%E5X

xen/arch/powerpc/domain.c
xen/arch/powerpc/time.c
xen/include/public/arch-powerpc.h

index 45ed9599452fd86bd96888356b140ac07410fdb3..b029628582e57b6753f4bd129f219e59157024cb 100644 (file)
@@ -152,17 +152,20 @@ void vcpu_destroy(struct vcpu *v)
 
 int arch_set_info_guest(struct vcpu *v, vcpu_guest_context_t *c)
 { 
+    struct domain *d = v->domain;
+
     memcpy(&v->arch.ctxt, &c->user_regs, sizeof(c->user_regs));
 
-    printk("Domain[%d].%d: initializing\n",
-           v->domain->domain_id, v->vcpu_id);
+    printk("Domain[%d].%d: initializing\n", d->domain_id, v->vcpu_id);
+
+    if (d->arch.htab.order == 0)
+        panic("Page table never allocated for Domain: %d\n", d->domain_id);
+    if (d->arch.rma_order == 0)
+        panic("RMA never allocated for Domain: %d\n", d->domain_id);
 
-    if (v->domain->arch.htab.order == 0)
-        panic("Page table never allocated for Domain: %d\n",
-              v->domain->domain_id);
-    if (v->domain->arch.rma_order == 0)
-        panic("RMA never allocated for Domain: %d\n",
-              v->domain->domain_id);
+    d->shared_info->wc_sec = dom0->shared_info->wc_sec;
+    d->shared_info->wc_nsec = dom0->shared_info->wc_nsec;
+    d->shared_info->arch.boot_timebase = dom0->shared_info->arch.boot_timebase;
 
     set_bit(_VCPUF_initialised, &v->vcpu_flags);
 
index 3a26e2ace4a554bad1033db2d63580fc7c1c638f..8f6bc70bda4b986f338f7944e6ed194efb25f970 100644 (file)
@@ -85,12 +85,6 @@ void send_timer_event(struct vcpu *v)
     vcpu_unblock(v);
 }
 
-/* Set clock to <secs,usecs> after 00:00:00 UTC, 1 January, 1970. */
-void do_settime(unsigned long secs, unsigned long usecs, u64 system_time_base)
-{
-    unimplemented();
-}
-
 void update_vcpu_system_time(struct vcpu *v)
 {
 }
index 267d6c6a91191157a4c99845b7110cdaaeb81afa..9acb749e16e631cca476844f283f0a9978a47338 100644 (file)
@@ -108,7 +108,7 @@ typedef struct vcpu_guest_context vcpu_guest_context_t;
 DEFINE_XEN_GUEST_HANDLE(vcpu_guest_context_t);
 
 struct arch_shared_info {
-    uint64_t pad[32];
+    uint64_t boot_timebase;
 };
 
 struct arch_vcpu_info {